// 引入公共样式
require("../../assets/css/communal.less");

// 引入字体图标
require("../../assets/fonts/fitness-fonts/iconfont.css");

const axios = require("../../util/axios.js");
// 引入工具js
const dom = require("../../util/dom.js");
const time = require("../../util/time.js");

// 引入尾部导航栏样式
require("../../assets/css/common-css/tabber.less");

// 引入头部导航样式
require("../../assets/css/common-css/navbar.less");

// 引入当前页样式
require("./sports_sportring.less");
document.addEventListener("DOMContentLoaded", function () {
	//1. 地理定位
	AMap.plugin("AMap.Geolocation", function () {
		var geolocation = new AMap.Geolocation({
			// 是否使用高精度定位，默认：true
			enableHighAccuracy: true,
			// 设置定位超时时间，默认：无穷大
			timeout: 10000,
			// 定位按钮的停靠位置的偏移量
			offset: [10, 20],
			//  定位成功后调整地图视野范围使定位位置及精度范围视野内可见，默认：false
			zoomToAccuracy: true,
			//  定位按钮的排放位置,  RB表示右下
			position: "RB",
		});

		geolocation.getCurrentPosition(function (status, result) {
			if (status == "complete") {
				console.log("定位成功", result);
			} else {
				console.log("定位失败");
			}
		});
	});

	//2. 计算距离
	var p1 = [104.015715, 30.653105];
	var p2 = [104.044033, 30.514538];
	var dis = AMap.GeometryUtil.distance(p1, p2);

	// 获取随机数,用于模拟速度数据
	function getRandom(min, max) {
		return Math.floor(Math.random() * (max - min + 1)) + min;
	}

	// 模拟跑步数据
	let duration = 0; // 持续时间
	let meter = 0; // 总里程
	let calorie = 0; // 卡路里
	let timer = null; //定时器标记

	function begin() {
		timer = setInterval(function () {
			// 配速
			let speed = getRandom(3, 8);
			dom.$("#speed").textContent = speed + "米/秒";

			// 时间
			duration++;
			dom.$("#time").textContent = time.gettime(duration);

			// 里程
			meter += speed;
			dom.$("#metre").textContent = (meter / 1000).toFixed(3);

			// 卡路里
			calorie = 60 * (meter / 1000) * 1.36;
			dom.$("#calorie").textContent = calorie.toFixed(2);
		}, 1000);
	}
	begin();

	// 点击暂停全部停止,并显示两个按钮
	dom.$("#pause").addEventListener("click", function () {
		dom.$("#pause").style.display = "none";
		dom.$("#begin").style.display = "block";
		dom.$("#end").style.display = "block";
		clearInterval(timer);
	});

	// 点击继续按钮,继续开始训练
	dom.$("#begin").addEventListener("click", function () {
		dom.$("#pause").style.display = "block";
		dom.$("#begin").style.display = "none";
		dom.$("#end").style.display = "none";
		begin();
	});

	// 点击结束按钮,结束训练,并且将数据存入服务器,跳转至骑行页
	dom.$("#end").addEventListener("click", function () {
		// 发请求存数据
		axios
			.post("/api/exercise/save", {
				type: 1,
				duration,
				calorie,
				meter,
			})
			.then((res) => {
				if (res.data.errno === 0) {
					alert("运动结束");
					location.href = "sports_cycling.html";
				}
			});
	});
});
